<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <!-- <script src="./vue.js"></script> -->
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <style>

        #app{width:500px;margin:50px auto;border:3px solid red;}
        .box{
           border:1px solid #ccc;
           padding:2em;
           margin:5px;
        }
    </style>
</head>
<body>
  
    <div id="app">
        <h3 class="title">v-model</h3>
        <div class="box">
            <!-- 1. lazy  -->
            <!-- 不加lazy：<input v-model="userName" >
            {{userName}} -->
            <br>
            加lazy：<input v-model.lazy="userName" >
            {{userName}}

        </div>

        <div class="box">
            <!-- 2. number  
            不加number，就是一个普通的字符串
            加了number,会尽量帮你转成数值，转不成，也不会报错
            -->
           
            <br>
            加number：<input v-model.number="age" >
            {{age}}

        </div>


        <div class="box">
            <!-- 3. trim  
                自动把内容中的前后空格去掉
            -->
        
            <br>
            <input v-model.trim="email" >
            内容的长度：{{email.length}}
        </div>
    </div>
    <script>
        // v-model 
        //     v-model的三个修饰符
        // 1. lazy    -->   v-model.lazy="userName"
        //    默认情况，v-model只要用户修改了input中的内容（在每次input事件之后）就会与数据进行同步
        //    如果加了lazy之后，则在用户完成了输入，鼠标失焦之后(相当于change)，才会与数据同步。

        // 2. number
        //    自动转成数值的格式

        // 3. trim
        //    把内容中的前后空格去掉

        const vm = new Vue({
            el: "#app",
            data: {
                userName: '小王',
                age:18,
                email:''

            }
            
        })
    </script>

</body>
</html>